package co.edu.uniquindio.ondas.daos;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.Query;

import co.edu.uniquindio.ondas.entidades.RespuestaComentario;
/**
 * @version 1.0
 * @author Javier
 * 
 * Session Bean implementation class RespuestaComentarioDAO
 * 
 * @param RespuestaComentario hace referencia a la entidad que va hacer manejada por el DAO.
 * @param Long especifica cual es el tipo de dato de la llave primaria de la entidad. 
 */
public class RespuestaComentarioDAO extends DAO<RespuestaComentario, Long>{
	
	/**
	 * Manejador de persistencia
	 */
	private EntityManager entityManager;
	/**
	 * Metodo constructor 
	 *@param entityManager
	 */
	public RespuestaComentarioDAO(EntityManager entityManager) {
		super(entityManager);
		this.entityManager=entityManager;
	}

	@Override
	protected Class<RespuestaComentario> getEntityClass() {
		return RespuestaComentario.class;
	}

	/**
	 * Metodo que permite consultar y obtener una lista de respuestas a comentarios dado el la identificacion de comentario
	 * @param idComentario
	 * @return Listado de respuestas de Comentarios
	 */
	@SuppressWarnings("unchecked")
	public List<RespuestaComentario> obtenerRespuestasComentario(long idComentario)
	{
		Query query=entityManager.createQuery("SELECT r FROM RespuestaComentario r WHERE r.comentario.identificacion=:parametro");
		query.setParameter("parametro", idComentario);
		return query.getResultList();
	}
}
